Parallel Extensions to the Matrix Template Library

نویسندگان

  • Andrew Lumsdaine
  • Brian C. McCandless
چکیده

We present the preliminary design for a C++ template library to enable the compositional construction of matrix classes suitable for high performance numerical linear algebra computations. The library based on our interface definition — the Matrix Template Library (MTL) — is written in C++ and consists of a small number of template classes that can be composed to represent commonly used matrix formats (both sparse and dense) and parallel data distributions. A comprehensive set of generic algorithms provide high performance for all MTL matrix objects without requiring specific functionality for particular types of matrices. We present performance data to demonstrate that there is little or no performance penalty caused by the powerful MTL abstractions.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

STAPL: A Standard Template Adaptive Parallel C++ Library

The Standard Template Adaptive Parallel Library (STAPL) is a parallel library designed as a superset of the ANSI C++ Standard Template Library (STL). It is sequentially consistent for functions with the same name, and executes on unior multi-processor systems that utilize shared or distributed memory. STAPL is implemented using simple parallel extensions of C++ that currently provide a SPMD mod...

متن کامل

Matrix Multiplication Specialization in STAPL

The Standard Template Adaptive Parallel Library (STAPL) is a superset of C++’s Standard Template Library (STL) which allows highproductivity parallel programming in both distributed and shared memory environments. This framework provides parallel equivalents of STL containers and algorithms enabling ease of development for parallel systems. In this paper, we will discuss our methodology for imp...

متن کامل

STAPL: An Adaptive, Generic Parallel C++ Library

The Standard Template Adaptive Parallel Library (STAPL) is a parallel library designed as a superset of the ANSI C++ Standard Template Library (STL). It is sequentially consistent for functions with the same name, and executes on unior multi-processor systems that utilize shared or distributed memory. STAPL is implemented using simple parallel extensions of C++ that currently provide a SPMD mod...

متن کامل

OBP Lib: An Object-Oriented Parallel Library and its Preliminary Performance

OBP Lib (Object-Oriented Building Blocks in Parallel Programming) is a collection of parallel object classes including parallel array and matrix/vector classes in C ++ , which is useful for combining numeric algorithm templates libraries. The OBP Lib allows us to express parallel programs using parallel objects such as arrays and matrices, and still to hide the details of parallel programs. The...

متن کامل

Efficient Implementation of Portable C*-like Data-Parallel Library in C++

The C* language is a data-parallel extension of the C language which incorporates parallel data types. Since the C ++ language provides operator overloading, a C ++ library can implement the C* parallel extensions with a similar syntax. Although library implementations are highly portable, some overheads make them impractical. The two major overheads incurred are temporaries in each operator ap...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1997